package com.zoe.onelink.annotation.web.response;

/**
 * <p>标题: Controller返回结果包装器</p>
 * <p>描述: 在Controller类上使用该注解,API的返回结果会自动被包装为ResultVO<?>,例如返回User,会自动包装为ResultVO<User>返回
 * 约定: 如果HTTP请求头包含 disable-wrapper = 1 , 则该注解功能自动失效 </p>
 * <p>版权: Copyright (c) 2021</p>
 * <p>公司: 智业软件股份有限公司</p>
 *
 * @version: 1.0
 * @author: ruansheng
 * @date: 2021-07-28
 */

import java.lang.annotation.*;

@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
public @interface ResultWrapper {

    /**
     * 约定: 如果HTTP请求头包含 disable-wrapper = 1 , 则该注解功能自动失效
     */
    String DISABLE_WRAPPER_HEADER_KEY = "disable-wrapper";

    /**
     * 禁用该注解的包装功能
     */
    String DISABLE = "1";

}
